package com.bjb.vr.common.dto;

import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * @TableName res_local_resource
 */
@TableName(value = "res_local_resource")
@Data
public class ResLocalResource extends BaseModel implements Serializable {
    /**
     * 自增主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     * 租户ID
     */
    @TableField(value = "tenant_id", fill = FieldFill.INSERT)
    private String tenantId;

    /**
     * 数据ID用于同步
     */
    @TableField(value = "data_id", fill = FieldFill.INSERT)
    private Long dataId;

    /**
     * 资源内容表主键
     */
    @TableField(value = "res_id")
    private Long resId;

    /**
     * 资源内容名称
     */
    @TableField(value = "res_name")
    private String resName;

    /**
     * 学段
     */
    @TableField(value = "period")
    private String period;

    /**
     * 学期（上、下）
     */
    @TableField(value = "term")
    private String term;

    /**
     * 年级
     */
    @TableField(value = "level")
    private String level;

    /**
     * 学科
     */
    @TableField(value = "subject")
    private String subject;

    /**
     * 资源类型：交互课件、全景视频、全景图片、3D模型
     */
    @TableField(value = "res_type")
    private String resType;

    /**
     * 资源大小
     */
    @TableField(value = "content_size")
    private Integer contentSize;

    /**
     * 系统类型
     */
    @TableField(value = "system_type")
    private String systemType;

    /**
     * 品牌类型
     */
    @TableField(value = "brand_type")
    private String brandType;

    /**
     * 设备型号
     */
    @TableField(value = "device_type")
    private String deviceType;

    /**
     * 操作系统版本号
     */
    @TableField(value = "system_version")
    private String systemVersion;

    /**
     * 主题类型
     */
    @TableField(value = "theme_code")
    private String themeCode;

    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", locale = "zh", timezone = "GMT+8")
    @TableField(value = "gmt_create")
    private LocalDateTime gmtCreate;

    /**
     * 修改时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", locale = "zh", timezone = "GMT+8")
    @TableField(value = "gmt_modified")
    private LocalDateTime gmtModified;

    /**
     * 备注
     */
    @TableField(value = "remark")
    private String remark;

    @TableField(exist = false)
    private static final long serialVersionUID = 1L;
}